package com.ruoyi.ldzlsb.mapper;

import java.util.List;
import com.ruoyi.ldzlsb.domain.SbMaintenanceConfig;

/**
 * 保养配置Mapper接口
 * 
 * @author anli
 * @date 2025-01-11
 */
public interface SbMaintenanceConfigMapper 
{
    /**
     * 查询保养配置
     * 
     * @param configId 保养配置主键
     * @return 保养配置
     */
    public SbMaintenanceConfig selectSbMaintenanceConfigByConfigId(Long configId);

    /**
     * 查询保养配置列表
     * 
     * @param sbMaintenanceConfig 保养配置
     * @return 保养配置集合
     */
    public List<SbMaintenanceConfig> selectSbMaintenanceConfigList(SbMaintenanceConfig sbMaintenanceConfig);

    /**
     * 查询保养配置列表(包含设备类型名称)
     * 
     * @param sbMaintenanceConfig 保养配置
     * @return 保养配置集合
     */
    public List<SbMaintenanceConfig> selectSbMaintenanceConfigWithTypeList(SbMaintenanceConfig sbMaintenanceConfig);

    /**
     * 新增保养配置
     * 
     * @param sbMaintenanceConfig 保养配置
     * @return 结果
     */
    public int insertSbMaintenanceConfig(SbMaintenanceConfig sbMaintenanceConfig);

    /**
     * 修改保养配置
     * 
     * @param sbMaintenanceConfig 保养配置
     * @return 结果
     */
    public int updateSbMaintenanceConfig(SbMaintenanceConfig sbMaintenanceConfig);

    /**
     * 删除保养配置
     * 
     * @param configId 保养配置主键
     * @return 结果
     */
    public int deleteSbMaintenanceConfigByConfigId(Long configId);

    /**
     * 批量删除保养配置
     * 
     * @param configIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSbMaintenanceConfigByConfigIds(Long[] configIds);

    /**
     * 根据配置编号查询保养配置
     * 
     * @param configCode 配置编号
     * @return 保养配置
     */
    public SbMaintenanceConfig selectSbMaintenanceConfigByConfigCode(String configCode);

    /**
     * 根据设备类型ID查询保养配置数量
     * 
     * @param typeId 设备类型ID
     * @return 结果
     */
    public int selectCountByTypeId(Long typeId);

    /**
     * 根据设备类型ID查询保养配置列表
     * 
     * @param typeId 设备类型ID
     * @return 保养配置集合
     */
    public List<SbMaintenanceConfig> selectSbMaintenanceConfigByTypeId(Long typeId);
} 